package net.ieslaferreria.infoCiutat;

/*
 * -------------------------------------------------------------
 *  FECHA      HORA     NOMBRE     COMENTARIO
 * -------------------------------------------------------------
 *  14/05/08   17:39    DAVID      Creación de interface.
 *  15/05/08   12:13    ALEX       Corregida javadoc y
 *				   añadido el control de versiones
 *  30/05/08   00:19    ALEX       Añadidos metodos SET.
 *                     
 *
 * 
 */



import java.util.Vector;
import org.garret.perst.IPersistent;

/**
 * Interficie que representa un punt.
 * @author David Maqueda, Javi Xaranda, Alex Fernández, Sergio Soria.
 */
public interface Punt extends IPersistent{
   
    /** 
     * Retorna l'atribut codi que determina el codi identificatiu del punt.
     * 
     * @return int
     */
    public int getCodi();
    
    /**
     * Estableix el valor de l'atribut codi.
     * 
     * @param codi
     */
    public void setCodi(int codi);
    
    /** 
     * Retorna l'atribut nom que especifica el nom identificatiu del punt.
     * 
     * @return String
     */
    public String getNom();
    
    /**
     * Estableix el valor de l'atribut nom.
     * 
     * @param nom
     */
    public void setNom(String nom);
     
    /** 
     * Retorna l'atribut latitud que especifia la latitud de la situació 
     * del punt.
     * 
     * @return int
     */
    public int getLatitud();
    
    /**
     * Estableix el valor de l'atribut latitud.
     * 
     * @param latitud
     */
    public void setLatitud(int latitud);
    
    /** 
     * Retorna l'atribut longitud que especifia la longitud de la situació 
     * del punt.
     * 
     * @return int
     */
    public int getLongitud();
    
    /**
     * Estableix el valor de l'atribut longitud.
     * 
     * @param longitud
     */
    public void setLongitud(int longitud);
    
    /**
     * Retorna l'atribut linia que indica a quina linia o ruta pertany el punt.
     * 
     * @return String
     */
    public String getLinia();
    
    /**
     * Estableix el valor de l'atribut linia.
     * 
     * @param linia
     */
    public void setLinia(String linia);
    
    /** 
     * Retorna l'atribut tipus que indica quin es el tipus del punt.
     * 
     * @return TipusPunt
     */
    public TipusPunt getTipus();
    
    /**
     * Estableix el valor de l'atribut tipus.
     * 
     * @param tipus
     */
    public void setTipus(TipusPunt tipus);
    
    /** 
     * Retorna l'atribut informació que conté tota la informació adicional 
     * del punt.
     * 
     * @return Vector
     */
    public Vector getInformacio();
    
    /**
     * Estableix el valor de l'atribut informació.
     * 
     * @param informacio
     */
    public void setInformacio(Vector informacio);
    
    /** 
     * Retorna l'atribut arestes que conté totes les arestes a les qual pertany 
     * el punt.
     * 
     * @return Vector
     */
    public Vector getArestes();
    
    /**
     * Estableix el valor de l'atribut arestes.
     * 
     * @param arestes
     */
    public void setArestes(Vector arestes);
    
    /** 
     * Retorna l'atribut ciutat que indica el nom de la ciutat a la que pertany 
     * el punt.
     * 
     * @return String
     */
    public String getCiutat();
    
    /**
     * Estableix el valor de l'atribut ciutat.
     * 
     * @param ciutat
     */
    public void setCiutat(String ciutat);
    
    /**
     * Retorna l'atribut codiXarxa que conté el codi identificatiu de la xarxa.
     * 
     * @return int
     */
    public int getCodiXarxa();
    
    /**
     * Estableix el valor de l'atribut codiXarxa.
     * 
     * @param codiXarxa
     */
    public void setCodiXarxa(int codiXarxa);
    
    /**
     * Retorna l'atribut x que conté la coordenada X calculada a partir de la
     * longitud i la latitud.
     * 
     * @return int
     */
    public int getCoordenadaX();
            
    /**
     * Estableix el valor de l'atribut x.
     * 
     * @param x
     */
    public void setCoordenadaX(int x);
    
    /**
     * Retorna l'atribut y que conté la coordenada Y calculada a partir de la
     * longitud i la latitud.
     * 
     * @return int
     */
    public int getCoordenadaY();
    
    /**
     * estableix el valor de l'atribut y.
     * 
     * @param y
     */
    public void setCoordenadaY(int y);

}
